VB中,"女">"男",为什么是对的?按什么方法比较?

来源:百度知道 编辑:UC知道 时间:2024/05/31 09:43:00

Private Sub Form_Load()
Debug.Print "女" > "男"
End Sub
立即窗口显示:False

首先:文字之间是没有大小之分的,他们之间比较是一种错误。
其次,就是说,若有比较的话,可能是内码之间进行比较的吧。
呵呵!随便说说的,不清楚具体情况,作个记号,若以后有朋友对了,或者楼主知道了,可要编辑上去,让大家共享哦。

VB的字符串比较标准由Option Compare指定,默认是Binary,即二进制,且遵循按字符从左到右逐个进行比较的规则。每个字符的大小由其编码决定。比如字母"A"的ASCII码是65,"a"的ASCII码是97,因此"A"<"a"。

对于汉字而言,比较每个汉字的Unicode编码(16进制),"男"在Unicode编码中是7537,"女"在Unicode编码中是5973,因此"女"<"男"。

你说的"女">"男",是不对的。

.net用的是Unicode编码
男:0x7527
女:0x5973
你的结果不对吧?

按照音序比较,"女"是nv,"男"是nan,第一个字母n是相等的,第二个字母v大于a,所以"女"大于"男"